草庐IT

C++ Qt : Check the current State of QStateMachine

全部标签

QT通过QBreakpad捕捉崩溃

最近在公司项目上遇到程序运行时崩溃,也不好在log日志中定位。查找了资料发现,谷歌的一个开源项目Breakpad,统一了这三平台win、linux、mac生成dump的方式来捕捉崩溃。大致研究了一下,主要依赖一个静态库和几个头文件,我这边编译出来放到网盘上大家自行使用。链接:https://pan.baidu.com/s/19elsFxnKfzdNaX6cURruAw?pwd=JJLM提取码:JJLM 用法就是在工程文件pro里引入库:############forqBreakpad#############qBreakpad中需要使用到network模块QT+=network#启用多线程、异

Qt实现登录效果(超详细!超简单!)

title:Qt实现登录效果(超详细!超简单!)date:2022-8-13tags:学习C++Qtcategories:Qt:::tip🍓🍊从一个界面按登录跳转到另一个界面🍭🍓🍬:::效果图首先在登录界面输入正确的用户名和密码后点击登录,即可跳到第二个HelloWorld!界面!如何实现(按照我的步骤来,保证成功!)1.我的文件目录说明:在我的工程目录下面主要有三个源文件hello.cpp、login.cpp、main.cpp其关系是:main.cpp是主文件,login.cpp是登录界面的文件,点击登录后会跳转到hello.cpphelloworld页面然后Resources是我为工程添加

QT中使用ffmpeg的api进行视频的播放

在了解ffmpeg使用api进行视频的播放之前,我们首先了解一下视频的播放流程。一、视频的播放流程首先是我们最常见的视频文件,在播放流程中首先是要打开视频文件,将视频文件中的数据进行解封装,之后再将解封装之后的视频进行解码。解码之后的视频便是视频帧的数据,之后将视频帧数据一帧一帧的显示在显示器上。在使用api进行视频播放的时候也是通过这个流程。接下来我们看具体的实现。二、ffmpeg中的数据结构体在了解使用api之前,还需要先了解一下ffmpeg中的相关结构体,在了解了这些结构体之后,可以更容易的理解代码。AVFormatContext:此结构体存储音视频封装格式中包含的信息,并且这个结构体是

Qt/QtCreator:主动触发鼠标或键盘事件QMouseEvent与QKeyEvent

方法:        构造QMouseEvent或QKeyEvent,使用QApplication::sendEvent或postEvent进行投送事件  。        QApplication::sendEvent()和QApplication::postEvent()都是Qt中用于发送事件的函数,它们之间的区别在于事件的处理方式。        QApplication::sendEvent(target,event)是直接将事件event发送给目标target,并阻塞当前线程等待目标处理完事件后再继续执行,这个过程类似于一个同步调用。        QApplication::pos

QT使用QSetting保存程序运行时的一些状态信息到配置文件

参考:https://zhuanlan.zhihu.com/p/351214526介绍在产品使用过程中,有些用户有特定的习惯。比如窗口大小是的大小,文件打开的方式等等。因此我们需要有一个文件来保存用户的一些偏好信息,在程序重新启动的时候再进行偏好设置。这里用到了QSetting类。这个类允许你创建一个配置文件或者操作注册表,你还可以指定配置文件的位置,当然,读取也是没问题的。头文件#include使用方式首先定义一个Qsetting指针确定路径QStringsettingPath=QCoreApplication::applicationDirPath()+"/setting.ini";QSe

QT5.12安卓环境的搭建(转载保存留档查看)

1.QT环境搭建Qt5.12.6安装的时候添加“AndroidARM64-v8a”,也可以添加“AndroidARMv7”。(其它为搭建qgc时需要添加的)2.Android环境搭建QT官方的指导:Qt5.12GettingStartedwithQtforAndroidQt5.15GettingStartedwithQtforAndroid2.1JDK注意JDK一定是JDK6或JDK6之后,JDK11或JDK11之前的版本:点击这里,第一个红色框如下我们选择JDK8u291安装,链接:JDK下载后双击傻瓜式安装即可,安装包都已上传百度云2.2.NDK点击这里:NDK地址:NDK按官网推荐,Qt

Qt QFrame详解

1.概述voidsetFrameShape(Shape)QFrame继承QWidget,QFrame类是具有框架的小部件的基类,例如QLabel、QTextEdit,这些直接或间接继承QFrame类,都拥有框架。主要有下面几个作用:改变框架形状改变框架阴影改变框架的线宽改变框架的样式改变框架的矩形2.常用数据接口2.1设置框架矩形voidsetFrameRect(constQRect&)2.2设置框架阴影voidsetFrameShadow(Shadow)2.3设置框架形状voidsetFrameShape(Shape)2.4设置样式voidsetFrameStyle(intstyle)2.5

Qt的窗口的设置

窗口外部设置 Qt::WindowFlagsQt::WidgetQWidget默认窗口,没有父窗口的话,是一个独立窗口Qt::Window是一个窗口,有窗口边框和标题Qt::Dialog是一个对话框窗口Qt::Sheet是一个窗口或部件Macintosh表单(sheet)Qt::Drawer是一个窗口或部件Macintosh抽屉Qt::Popup是一个弹出式顶层窗口Qt::Tool是一个工具窗口Qt::ToolTip是一个提示窗口,没有标题栏和窗口边框Qt::SplashScreen是一个欢迎窗口,是QSplashScreen构造函数的默认值Qt::Desktop是一个桌面,是QDesktop

C++系列三:QT初识2

目录代码参考:前言:我可没说放弃Baseclass中的三个选项:QMainWindow:主窗口类,包括菜单栏、工具栏、状态栏。QWidget:可以创建一个空白的窗口,是所有界面组件的基类。QDialog:对话框类。Clang代码模型:help->AboutPlugins…->C++->ClangCodeModel去掉勾选,再重启会对源码进行分析,提供函数提示、代码补全等功能会出现大量警告和错误提示可以在Help->AboutPlugins中取消了该项(ClangCodeModel)qmake是构建项目的软件,它根据.pro文件生成Makefile文件,然后C++编译器可以根据Makefile文

Qt--多窗口编程

目录1. QMessageBox 消息对话框(掌握)示例代码:dialog.hdialog.cppdialog.ui运行结果:2. 窗口类继承关系dialog.cpp3. QMainWindow 主窗口类3.1 QMenuBar 菜单栏3.2 QToolBar 工具栏3.3  QWidget 中心组件3.4 QStatusBar 状态栏示例代码:mainwindow.hmainwindow.cppmainwindow.ui运行结果:4. parent参数示例代码:dialog.hdialog.cppdialog.ui运行结果:5. 自定义窗口类示例代码:dialog.hdialog.cpp运行